.\" Copyright (C) 2004 International Business Machines Corporation
.\" Written by Megan Schneider based on the Trusted Computing Group Software Stack Specification Version 1.1 Golden
.\"
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "Tspi_Context_LoadKeyByBlob" 3 "2004-05-25" "TSS 1.1"
.ce 1
TCG Software Stack Developers Reference
.SH NAME
Tspi_Context_LoadKeyByBlob \- load a key into the TPM using the key's blob.
.SH "SYNOPSIS"
.ad l
.hy 0
.nf
.B #include <tss/platform.h>
.B #include <tss/tcpa_defines.h>
.B #include <tss/tcpa_typedef.h>
.B #include <tss/tcpa_struct.h>
.B #include <tss/tss_typedef.h>
.B #include <tss/tss_structs.h>
.B #include <tss/tspi.h>
.sp
.BI "TSS_RESULT Tspi_Context_LoadKeyByBlob(TSS_HCONTEXT " hContext ",     TSS_HKEY " hUnwrappingKey ","
.BI "                                      UINT32       " ulBlobLength ", BYTE*    " rgbBlobData ","
.BI "                                      TSS_HKEY*    " phKey "); "
.fi
.sp
.ad
.hy

.SH "DESCRIPTION"
.PP
\fBTspi_Context_LoadKeyByBlob\fR 
creates a key based on the information gotten by the key blob. It then
loads the key into the TPM, which unwraps the key blob by using the key
associated with \fIhUnwrappingKey\fR. The key blob addressed by
\fihUnwrappingKey\fR must have been already loaded into the TPM. This
function returns a handle to the created key object.

.SH "PARAMETERS"
.PP
.SS hContext
The \fIhContext\fR parameter is the handle of the context object.
.SS hUnwrappingKey
The \fIhUnwrappingKey\fR parameter is the handle of the key object
which should be used to unwrap the key information associated with
\fIrgbBlobData\fR.
.SS rgbBlobData
The \fIrgbBlobData\fR parameter is the wrapped key to load.
.SS phKey
The \fIphKey\fR parameter receives the handle of the key object
representing the loaded key.

.SH "RETURN CODES"
.PP
\fBTspi_Context_LoadKeyByBlob\fR returns TSS_SUCCESS on success,
otherwise one of the following values is returned:
.TP
.SM TSS_E_INVALID_HANDLE
\fIhContext\fR is not a valid handle.

.TP
.SM TSS_E_INTERNAL_ERROR
An internal SW error has been detected.

.TP
.SM TSS_E_BAD_PARAMETER
One or more parameters is bad.

.SH "CONFORMING TO"

.PP
\fBTspi_Context_LoadKeyByBlob\fR conforms to the Trusted Computing
Group Software Specification version 1.1 Golden

.SH "SEE ALSO"

.PP
\fBTspi_Context_LoadKeyByUUID\fR(3), \fBTspi_Policy_SetSecret\fR(3),
\fBTspi_GetPolicyObject\fR(3), \fBTspi_Key_CreateKey\fR(3),
\fBTspi_GetAttribUint32\fR(3).

